1. Field of the Invention
This invention relates generally to video signal decoding systems. More particularly, the present invention is concerned with a digital decoding system for decoding video signals which uses bi-orthogonal wavelet coding to decompress digitized video data.
2. Description of the Prior Art
There is currently a need for the reliable transmission and reception of real time television video and/or television sub video over a narrow bandwidth. For example, in the transmission of telemetry video data from a missile the telemetry channel may have a bandwidth of two megahertz or even substantially less than two megahertz.
Prior art methods and apparatus for compressing and subsequently decompressing real time video data include Adaptive Differential Pulse Code modulation (ADPCM), Joint Photography Experts Group (JPEG) and Motion Picture Experts Group (MPEG). These methods of encoding and then decoding real time video data are generally not capable of sufficient bandwidth reduction or are susceptible to excessive data loss in a noisy environment.
For example, Adaptive Differential Pulse Code modulation, which is used by the International Range Instrumentation Group to transmit telemetry data, is noise immune, however, it is not capable of real time video data compression to allow accurate and reliable transmission of the data over a channel narrower than five megahertz. Even moderately complex video images overload an ADPCM encoder and its associated decoder causing it to lose fields and even multiple frames of video data.
Both Joint Photography Experts Group and Motion Picture Experts Group methods and encoders are capable of compressing and then decompressing real time video data sufficiently to allow the data to be transmitted-over a two megahertz channel, however, these methods and encoders are susceptible to noise. A single noise hit, for example, can cause the lose of an entire video field or even multiple fields. In addition, JPEG and MPEG encoding and subsequent decoding can distort an image with the random appearance of square blocks caused in a noisy environment by a reflection of eight by eight pixel discrete cosine transform used encode the video data.
Accordingly, there is a need for an encoder to accurately and reliably encode complex video data which will allow for its transmission over a bandwidth of two megahertz without distortion of the data caused by noise. There is also a need for a decoder which will accurately and reliably decode the encoded data when the data is received at its destination.
The present invention overcomes some of the disadvantages of the prior art including those mentioned above in that it comprises a highly reliable and effective video decoder for decompressing video data to allow the video data to be used to recreate highly accurate and detailed video images when the data is received and processed at its destination.
The video decoder of the present invention includes a programmable gate array which receives a serial data stream of compressed video data containing 32 bit data words. The programmable gate array converts the serial data stream of compressed video data to a parallel format comprising four eight bit bytes which are sequentially written into a multiformat video codec. The multiformat video codec is a video encoder/decoder optimized for real-time decompression of interlaced digital data. The decompression algorithm for the multiformat video codec is based on the bi-orthogonal (7,9) wavelet transform and implements field independent sub-band coding.
The programmable gate array includes a most significant sync word decoder for receiving and decoding a thirty two bit word of a Mallat block of video data. Whenever a thirty two bit word comprises thirty two logic ones the most significant sync word decoder decodes the word providing a logic one at its output.
The programmable gate array also includes a least significant sync word decode. Whenever the most significant sync word decoder provides a logic one at its output, the least significant sync word decoder will process the next word of the Mallat block to determine whether a Mallat block header is present. Whenever the least significant sync word decoder decodes and then provides at its output a logic one a Mallat block header is present.
The logic ones from the most and least significant sync word decoders are supplied to an AND gate which then generates a sync signal indicating the presence of a Mallat block of compressed video data. The sync signal is supplied to a read write controller and byte select controller within the programmable gate array. The byte select controller generates four sequential byte enable signals for each eight bit byte of a thirty two bit word to be written into codec, while the read write controller generates the write signals for writing the four data bytes into codec.
An eight bit serial to parallel shift register included in the programmable gate array converts the serial data stream of compressed video data into the eight bit bytes of compressed video data allowing the compressed video data to be written into the multiformat video codec. Control signals for the shift register are generated by the read write controller.